import type { TANPANCHA_CATEGORY_TYPE, TANPANCHA_DATA_FILL_TYPE, TANPANCHA_DATA_SOURCE_TYPE, TANPANCHA_STATUS, TANPANCHA_TYPE } from '@/constant/modules/tanpancha'

interface GasInfoVo {
  id: number
  gas: string
  emissionFactor: number
  emissionUnitFactor: string
  emissionUnit: string
  gwp: number
  discountValue: number
}

interface FacilityActivityVo {
  [key: string]: any
  id: number
  name: string
  emissionSource: string
  emissionType: TANPANCHA_TYPE
  sourceType: TANPANCHA_DATA_SOURCE_TYPE
  entryMethod: TANPANCHA_DATA_FILL_TYPE
  yearNum: number
  unit: string
  updateTime: string
  gasList: GasInfoVo[]
}

interface CategoryDetailVo {
  id: number
  name: string
  xh: string
  categoryType: TANPANCHA_CATEGORY_TYPE
  facilityActivityList: FacilityActivityVo[]
}

interface CategoryVo {
  id: number
  name: string
  xh: string
  categoryList: CategoryDetailVo[]
}

export interface PanchaInformation {
  carbonInventoryId: number
  totalCarbonEmission: number
  carbonEmission: number
  emissionReduction: number
  status: TANPANCHA_STATUS
  dataList: CategoryVo[]
}

export interface FacilityActivityItem {
  [key: string]: any
  /** 设施/活动 */
  name: string
  /** 排放源 */
  emissionSource: string
  /** 排放类型 */
  emissionType: TANPANCHA_TYPE
  /** 数据来源 */
  sourceType: TANPANCHA_DATA_SOURCE_TYPE
  /** 数据单位 */
  unit: string
  /** 温室气体 */
  gas: string
  /** 排放因子值 */
  emissionFactor: number
  /** 排放因子单位 */
  emissionUnitFactor: string
  /** gwp值 */
  gwp: number
  /** 换算比例 */
  discountValue: number
  /** 修改时间 */
  updateTime: string
}
